package com.forum.module.system.enums;

import com.forum.framework.common.exception.ErrorCode;

/**
 * System 错误码枚举类
 *
 * @author zihan.ouyang
 */
public interface ErrorCodeConstants {
    // ========== 用户模块 模块 1-002-000-000 ==========

    ErrorCode USER_NOT_EXISTS = new ErrorCode(100200000, "账号不存在");
    ErrorCode USER_PASSWORD_ERROR = new ErrorCode(100200001, "账号或密码错误");
    ErrorCode USER_NOT_ENABLE = new ErrorCode(100200002, "账户未启用，请联系管理员");
    ErrorCode USER_NOT_LOGIN = new ErrorCode(100200003, "您未登录，请登录后再试");
    ErrorCode USER_LOGIN_TIMEOUT = new ErrorCode(100200004, "登录超时");
    ErrorCode USER_LOGIN_CAPTCHA_ERROR = new ErrorCode(100200005, "验证码错误");
    ErrorCode USER_LOGIN_CAPTCHA_EXPIRE = new ErrorCode(100200006, "验证码已失效");
    ErrorCode USER_USERNAME_EXISTS = new ErrorCode(1002001007, "用户名已存在");
    ErrorCode USER_EMAIL_EXISTS = new ErrorCode(1002001008, "邮箱已存在");
    ErrorCode USER_MOBILE_EXISTS = new ErrorCode(1002001009, "手机号已存在");
    ErrorCode ROLE_NOT_EXISTS = new ErrorCode(1002001010, "角色不存在");
    ErrorCode USER_ROLE_NOT_EXISTS = new ErrorCode(1002001011, "用户角色关联不存在");
    ErrorCode MAIL_CODE_IS_EXISTS = new ErrorCode(1002001012, "已经获取过验证码，请五分钟后再试!");
    ErrorCode GET_MAIL_CODE_ERROR = new ErrorCode(1002001013, "获取邮件异常，请联系管理员！");
    ErrorCode MAIL_CODE_NOT_EQUALS = new ErrorCode(1002001014, "邮箱验证码不匹配！");
    ErrorCode PWD_NEWPWD_NOT_EQUALS = new ErrorCode(1002001015, "新密码不能和旧密码一致！");
    ErrorCode CODE_TIME_OUT = new ErrorCode(1002001016, "验证码已过期！");
    ErrorCode FEEDBACK_NOT_EXISTS = new ErrorCode(1002001017, "用户反馈不存在");
    // ========== OAuth2 客户端 1-002-001-000 =========
    ErrorCode OAUTH2_CLIENT_NOT_EXISTS = new ErrorCode(100200100, "客户端不存在");

    // ========== 文件 1-002-002-000 =========
    ErrorCode FILE_UPLOAD_FAIL = new ErrorCode(1002002000, "文件上传失败");
    ErrorCode FILE_DOWNLOAD_FAIL = new ErrorCode(1002002001, "文件下载失败");
    ErrorCode FILE_PATH_ERROR = new ErrorCode(1002002002, "文件路径不合法，请联系管理员！");
    ErrorCode FILE_LOADING_ERROR = new ErrorCode(1002002003, "文件加载失败，请联系管理员！");

    // ========== 博客 1-002-003-000 =========

    ErrorCode ARTICLE_NOT_EXISTS = new ErrorCode(1002003000, "文章不存在");
    ErrorCode CATEGORY_NOT_EXISTS = new ErrorCode(1002003001, "分类不存在");
    ErrorCode CATEGORY_TAG_NOT_EXISTS = new ErrorCode(1002003002, "文章标签关联关系不存在");
    ErrorCode COMMENT_NOT_EXISTS = new ErrorCode(1002003003, "评论不存在");
    ErrorCode FAVORITE_NOT_EXISTS = new ErrorCode(1002003004, "收藏不存在");
    ErrorCode NOTIFICATION_NOT_EXISTS = new ErrorCode(1002003005, "站内信不存在");
    ErrorCode LIKES_NOT_EXISTS = new ErrorCode(1002003006, "点赞不存在");
    ErrorCode TAG_NOT_EXISTS = new ErrorCode(1002003007, "标签不存在");
    ErrorCode LIKES_IS_EXISTS = new ErrorCode(1002003008, "请勿重复点赞！");
    ErrorCode LIKES_REQUEST_IS_NOT_EXISTS = new ErrorCode(1002003009, "点赞对象不能同时为空！");
    ErrorCode LIKES_REQUEST_IS_ALL_EXISTS = new ErrorCode(1002003010, "不能同时点赞文章和评论！");
    ErrorCode FAVORITE_IS_EXISTS = new ErrorCode(1002003011, "请勿重复收藏！");
    ErrorCode TAG_IS_EXISTS = new ErrorCode(1002003012, "标签已经存在");

    ErrorCode CATEGORY_IS_EXISTS = new ErrorCode(1002003001, "分类已经存在");

    // ========== GPT 1-002-004-000 =========
    ErrorCode QUESTION_IS_NOT_EMPTY = new ErrorCode(1002004000, "问题不能为空！");
    ErrorCode REQUEST_DEEPSEEK_EXCEPTION = new ErrorCode(1002004001, "请求本地DEEPSEEK异常！");

}
